New Methods for Multiplication-Free Arithmetic Coding
نویسنده
چکیده
Arithmetic coding is a well-known technique for lossless coding or data compression. It is based on splitting a current interval into sub-intervals, each sub-interval corresponding to a possible symbol to be encoded and the size of each sub-interval corresponding to the probability of the associated symbol. This involves multiplying the current interval size A by one or more probabilities, which is a bottleneck for a high-speed implementation. Fortunately, it turns out that the multiplications can be performed with low accuracy, at only a small loss of performance. Generally, low-accuracy multiplication methods are based on approximating the interval size A before multiplying it with the symbol probabilities, with the purpose of reducing the complexity of the multiplication. For example, one method is to simply truncate A (which is kept normalized between 1/2 and 1) to its x most significant bits. Typically, x is small compared to the number of bits used for representing A (even x=2 is practically useful). An implementation of arithmetic coding that uses such low-complexity approximations of the full-accuracy multiplication is called “multiplication free”. We have developed two new multiplication-free methods. Our first new method is to round A to x bits instead of truncating it. Rounding is equivalent to truncating A to its x most significant bits if the (x+1)th most significant bit of A is a 0 and adding 1 to the truncated representation if the (x+1)th most significant bit is a 1. The rounding that is applied in our new method increases the complexity (compared to truncation), since, in about half of the cases, 1 has to be added to the truncated representation. As an alternative, we therefore developed a second new method, which we call “partial rounding”. By partial rounding we mean that 1 is only added to the truncated representation of A in case the (x+1)th most significant bit is a 1 and the xth most significant bit is a 0. In the implementation this means that the xth bit of the approximation of A equals the logical OR of the xth and (x+1)th most significant bits of the original A. The partial rounding of this second new method results in the same approximation as the “full rounding” of the first method in about 75% of the cases, but its complexity is as low as that of truncation (since the complexity of the OR is negligible). Applying the various multiplication-free methods in the arithmetic coder in the scheme described in [1–3] has demonstrated that our new rounding-based method outperforms the previously published multiplication-free methods. The “partial rounding” method outperforms the previously published truncation-based methods.
منابع مشابه
An Efficient Adaptive Binary Arithmetic Coder and Its Application in Video Coding
Adaptive Binary Arithmetic coding is an effective mode of coding. In this paper we propose an efficient adaptive binary arithmetic coder, which is multiplication-free and look-up table free. To achieve this, we combine the probability estimation based on the virtual sliding window technique with the approximation of multiplication and the use of simple operations to calculate the next approxima...
متن کاملA Highly Efficient Multiplication−Free Binary Arithmetic Coder and Its Application in Video Coding (TA−P2)
In this paper, we propose a novel and highly efficient algorithm of multiplication−free binary arithmetic coding. Our proposed method relies on simple table lookups for performing the computationally critical operations of interval subdivision and probability estimation. Moreover, the underlying design principle provides a great flexibility for serving the different needs of all kind of coding ...
متن کاملA novel efficient encoding engine for CABAC
In this paper we propose a novel efficient adaptive binary arithmetic coder which is multiplication-free and requires no look-up tables. To achieve this, we combine the probability estimation based on a virtual sliding window with the approximation of multiplication and the use of simple operations to calculate the next approximation after the encoding of each binary symbol. We show that in com...
متن کاملThe Z-Coder Adaptive Binary Coder
We present the Z Coder a new adaptive data compression coder for coding binary data The Z Coder is derived from the Golomb run length coder and retains most of the speed and simplicity of the earlier coder The Z Coder can also be thought of as a multiplication free approximate arithmetic coder showing the close relationship between run length coding and arithmetic cod ing The Z Coder improves u...
متن کاملArithmetic Coding Hardware Acceleration in a SoPC platform for Advanced Video Compression
This paper investigates the algorithmic complexity of arithmetic coding in the new H264 video coding standard and proposes a coprocessor to reduce it by more than an order of magnitude. The coprocessor is based on an innovative algorithm known as the MZ-coder and maintains the original coding efficiency with a multiplication-free, non-stalling, fully pipelined architecture with modest hardware ...
متن کامل